package com.example.bigdata.scala.列表


/**
  * 在Scala列表中，所有元素都具有类似数组的类型，但与数组不同，列表的元素不能通过赋值进行更改。
  * 具有类型T的元素的列表被写为List [T]。
  * 有两种方法来创建列表：
  *     以与创建数组类似的方式创建列表
  *     use :: cons运算符。
  */
object Scala列表 {
    def main(args: Array[String]): Unit = {
        // 首先我们将展示更传统的方法。以下代码显示了如何创建空列表。
        val empty :List[Nothing] = List()
        //我们可以创建如下列代码所示的书籍列表：
        val books:List[String] = List ("scala","java","python")

        /**
          * 这两个列表可以使用tailNil和::定义。
          *
          * Nil也表示空列表。
          * 可以使用Nil定义空列表。
          */
        val books01 = "Scala" :: ("Groovy" :: ("Java" :: Nil))
        val otherList = List(4,5,6)
        val newlist = books01 :::  otherList
        newlist.foreach(println)

        val x = List(1)


        //另一种生成List的方式
        val oneTwoThree = 1::2::3::Nil
        oneTwoThree.foreach(println)
    }

}
